//package com.app;
//
//import com.app.base.RabbitMQConfig;
//import com.app.enums.MessageEnum;
//import com.app.exceptions.GraceException;
//import com.app.grace.result.ResponseStatusEnum;
//import com.app.mo.MessageMO;
//import com.app.service.MsgService;
//import com.app.utils.JsonUtils;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.amqp.core.Message;
//import org.springframework.amqp.rabbit.annotation.RabbitListener;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Component;
//
//@Slf4j
//@Component
//public class RabbitMQConsumer {
//
//    @Autowired
//    private MsgService msgService;
//
//    @RabbitListener(queues = {RabbitMQConfig.QUEUE_SYS_MSG})
//    public void watchQueue(String payload, Message message) {
//        log.info(payload);
//
//        MessageMO messageMO = JsonUtils.jsonToPojo(payload, MessageMO.class);
//
//        String routingKey = message.getMessageProperties().getReceivedRoutingKey();
//        log.info(routingKey);
//
//        if (routingKey.equalsIgnoreCase("sys.msg." + MessageEnum.FOLLOW_YOU.enValue)) {
//            //消息：关注
//            msgService.createMsg(messageMO.getFromUserId(),
//                    messageMO.getToUserId(),
//                    MessageEnum.FOLLOW_YOU.type,
//                    null);
//        } else if (routingKey.equalsIgnoreCase("sys.msg." + MessageEnum.LIKE_VLOG.enValue)) {
//            //消息：点赞视频
//            msgService.createMsg(messageMO.getFromUserId(),
//                    messageMO.getToUserId(),
//                    MessageEnum.FOLLOW_YOU.type,
//                    messageMO.getMsgContent());
//        } else if (routingKey.equalsIgnoreCase("sys.msg." + MessageEnum.COMMENT_VLOG.enValue)) {
//            //消息：评论视频
//            msgService.createMsg(messageMO.getFromUserId(),
//                    messageMO.getToUserId(),
//                    MessageEnum.COMMENT_VLOG.type,
//                    messageMO.getMsgContent());
//        } else if (routingKey.equalsIgnoreCase("sys.msg." + MessageEnum.REPLY_YOU.enValue)) {
//            //消息：回复评论
//            msgService.createMsg(messageMO.getFromUserId(),
//                    messageMO.getToUserId(),
//                    MessageEnum.REPLY_YOU.type,
//                    messageMO.getMsgContent());
//        } else if (routingKey.equalsIgnoreCase("sys.msg." + MessageEnum.LIKE_COMMENT.enValue)) {
//            //消息：点赞消息
//            msgService.createMsg(messageMO.getFromUserId(),
//                    messageMO.getToUserId(),
//                    MessageEnum.LIKE_COMMENT.type,
//                    messageMO.getMsgContent());
//        } else {
//            GraceException.display(ResponseStatusEnum.SYSTEM_OPERATION_ERROR);
//        }
//
//    }
//
//
//}
